module.exports = {
  apps: [{
    name: 'website',
    script: './node_modules/next/dist/bin/next',
    args: 'start',
    cwd: '/www/wwwroot/website',
    env: {
      NODE_ENV: 'production',
      PORT: 3000,
      NEXTAUTH_URL: 'https://xm.uzapp.com',
      NEXTAUTH_DEBUG: 'true'
    },
    // 增加错误处理
    max_memory_restart: '1G',
    exp_backoff_restart_delay: 100,
    watch: false,
    ignore_watch: ['node_modules', '.next'],
    max_restarts: 10,
    min_uptime: '5s',
    // 错误日志
    error_file: '/www/wwwlogs/pm2/website/err.log',
    out_file: '/www/wwwlogs/pm2/website/out.log',
    // 自动重启
    autorestart: true,
    // 内存限制
    max_memory_restart: '1G',
    // 重启延迟
    restart_delay: 4000,
    // 等待时间
    wait_ready: true,
    listen_timeout: 30000,
    // 增加端口检查
    port: 3000,
    // 增加健康检查
    health_check: {
      url: 'http://localhost:3000',
      interval: 30000,
      timeout: 5000,
      retries: 3
    },
    // 日志配置
    log_date_format: 'YYYY-MM-DD HH:mm:ss',
    merge_logs: true,
    log_type: 'json',
    // 进程管理
    instances: 1,
    exec_mode: 'fork',
    // 错误处理
    kill_timeout: 3000,
    // 启动检查
    wait_ready: true,
    // 启动超时
    start_timeout: 30000,
    // 启动重试
    max_restarts: 5,
    // 启动间隔
    restart_delay: 5000
  }]
} 